// 获取表格列表数据       // root:this
// root是传进来的参数 代表这里后面使用的this
// url是进行请求的地址
// params是携带的参数
// 因为参数可有可无 所以后面 || 判断
// 进行正常的.then方法
export function getData(root, url, params) {
    root.connector.get(url, { params: params || {} }).then(res => {
        if (res.data.status) {
            root.tableData = res.data.data
            root.total = res.data.total
        }
    })
        //抛出异常
        .catch(err => {
            throw err
        })
}


// 新增和修改方法的封装 
//接口特殊性 需要借助qs进行转换
import qs from 'qs'
export function changeInfo(root, method, url, form, callback) {
    let data = qs.stringify(form)
    root.connector[method](url, data)
        .then(res => {
            if (res.data.status === 200) {
                callback(root, url)
                root.dialogFormVisible = false
                root.$refs['form'].resetFields()
                root.$message({ type: 'success', message: res.data.message })
            }
        })
        .catch(err => {
            throw err
        })
}


// 删除方法
export function delData(root, url, id, callFun) {
    root.$alert('你确定要删除吗？', '提示', {
        confirmButtonText: '确定',
        callback: () => {
            root.connector.get(url, { params: params || {} }).then(res => {
                if (res.data.status === 200) {
                    callFun(root, url)
                    root.$message({ message: res.data.message, type: 'success' })
                }
            })
                .catch(err => {
                    throw err
                })
        }
    })
}

//作业
export function getTableData(root, url, params ,ret) {
    root.connector.get(url, { params: params || {} }).then(res => {
        if (res.data.status === 200) {
            root.tableData = res.data.data
            root.total = res.data.total
            root.tableData.map(item=>{
                ret.map(aItem=>{
                    item[aItem] ? item[aItem + '_text'] = '是' : item[aItem + '_text'] = '否'
                })
            })
            root.loading=false
        }
    })
        .catch(err => {
            throw err
        })
}


